package com.yc.cloud.admin.service;

import com.yc.cloud.entity.UmsRole;
import com.baomidou.mybatisplus.extension.service.IService;
import cn.hutool.core.util.StrUtil;
import com.yc.cloud.basic.dto.BaseQueryParam;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * <p>
 * 后台用户角色表 服务类
 * </p>
 *
 * @author JackGu
 * @since 2022-09-11
 */
public interface UmsRoleService extends IService<UmsRole> {

    /***
     * description:查询列表
     * @param param 查询条件
     * @return 数据信息
     */
    IPage<UmsRole> list(BaseQueryParam param);

    /**
     * 获取用户对应角色
     */
    List<UmsRole> getRoleList(Long adminId);

    /**
     * 修改用户角色关系
     */
    @Transactional
    int updateRole(Long adminId, List<Long> roleIds);

    /**
     * 给角色分配菜单
     */
    @Transactional
    int allocMenu(Long roleId, List<Long> menuIds);


    /**
     * 给角色分配资源
     */
    @Transactional
    int allocResource(Long roleId, List<Long> resourceIds);

}

